<script setup>
import { ref, onMounted } from 'vue'
import HomePanel from './HomePanel.vue';
import { getNewsAPI } from '@/api/layout'

const news = ref([])
const getNews = async () => {
    const { data: res } = await getNewsAPI()
    if (res.code !== '1') return ElMessage.error(res.msg)
    news.value = res.result
}

onMounted(() => {
    getNews()
})


</script>

<template>
    <HomePanel title="新鲜好物" sub-title="新鲜出炉 品质靠谱">
        <template v-slot:main>
            <div>
                <ul class="goods_list">
                    <li v-for="item in news" :key="item.id">
                        <RouterLink :to="`/layout/detail/${item.id}`">
                            <img v-img-lazy="item.picture">
                            <p class="name">{{ item.name }}</p>
                            <p class="price">&yen;{{ item.price }}</p>
                        </RouterLink>
                    </li>
                </ul>
            </div>
        </template>
    </HomePanel>
</template>

<style lang="scss" scoped>
.goods_list {
  display: flex;
  justify-content: space-between;
  height: 406px;

  li {
    width: 306px;
    height: 406px;

    background: #f0f9f4;
    transition: all .5s;

    &:hover {
      transform: translate3d(0, -3px, 0);
      box-shadow: 0 3px 8px rgb(0 0 0 / 20%);
    }

    img {
      width: 306px;
      height: 306px;
    }

    p {
      font-size: 22px;
      padding-top: 12px;
      text-align: center;
      text-overflow: ellipsis;
      overflow: hidden;
      white-space: nowrap;
    }

    .price {
      color: $priceColor;
    }
  }
}
</style>